Telegram Group & Telegram Channel
🗃 Работа с файлами и файловой системой в C++17

Хочешь получить список файлов в папке? std::filesystem предоставляет удобные итераторы для обхода директории. Особенно полезно при создании загрузчиков ассетов, инструментов или скриптов, работающих с файлами.


✏️ Решение:

1. заголовочный файл <filesystem>
2. Используй directory_iterator для обхода содержимого папки
3. Проверь тип объекта (файл, директория и т.д.), если нужно отфильтровать только файлы

#include <iostream>
#include <filesystem>

namespace fs = std::filesystem;

int main() {
std::string path = "."; // текущая директория

for (const auto& entry : fs::directory_iterator(path)) {
if (fs::is_regular_file(entry)) {
std::cout << "Файл: " << entry.path() << std::endl;
}
else if (fs::is_directory(entry)) {
std::cout << "Папка: " << entry.path() << std::endl;
}
}

return 0;
}



⚠️ Возможные ошибки:

- Подключение <experimental/filesystem> вместо стандартного <filesystem> (устарело в C++17)
- Отсутствие обработки исключений — доступ к некоторым директориям может быть запрещён


Совет:

- Добавь try-catch вокруг итератора, если работаешь с произвольными путями
- Также удобно фильтровать файлы по расширению:
if (entry.path().extension() == ".cpp")



Библиотека C/C++ разработчика #буст
Please open Telegram to view this post
VIEW IN TELEGRAM



tg-me.com/cppproglib/5761
Create:
Last Update:

🗃 Работа с файлами и файловой системой в C++17

Хочешь получить список файлов в папке? std::filesystem предоставляет удобные итераторы для обхода директории. Особенно полезно при создании загрузчиков ассетов, инструментов или скриптов, работающих с файлами.


✏️ Решение:

1. заголовочный файл <filesystem>
2. Используй directory_iterator для обхода содержимого папки
3. Проверь тип объекта (файл, директория и т.д.), если нужно отфильтровать только файлы

#include <iostream>
#include <filesystem>

namespace fs = std::filesystem;

int main() {
std::string path = "."; // текущая директория

for (const auto& entry : fs::directory_iterator(path)) {
if (fs::is_regular_file(entry)) {
std::cout << "Файл: " << entry.path() << std::endl;
}
else if (fs::is_directory(entry)) {
std::cout << "Папка: " << entry.path() << std::endl;
}
}

return 0;
}



⚠️ Возможные ошибки:

- Подключение <experimental/filesystem> вместо стандартного <filesystem> (устарело в C++17)
- Отсутствие обработки исключений — доступ к некоторым директориям может быть запрещён


Совет:

- Добавь try-catch вокруг итератора, если работаешь с произвольными путями
- Также удобно фильтровать файлы по расширению:
if (entry.path().extension() == ".cpp")



Библиотека C/C++ разработчика #буст

BY Библиотека C/C++ разработчика | cpp, boost, qt




Share with your friend now:
tg-me.com/cppproglib/5761

View MORE
Open in Telegram


Библиотека C C разработчика | cpp boost qt Telegram | DID YOU KNOW?

Date: |

A project of our size needs at least a few hundred million dollars per year to keep going,” Mr. Durov wrote in his public channel on Telegram late last year. “While doing that, we will remain independent and stay true to our values, redefining how a tech company should operate.

Newly uncovered hack campaign in Telegram

The campaign, which security firm Check Point has named Rampant Kitten, comprises two main components, one for Windows and the other for Android. Rampant Kitten’s objective is to steal Telegram messages, passwords, and two-factor authentication codes sent by SMS and then also take screenshots and record sounds within earshot of an infected phone, the researchers said in a post published on Friday.

Библиотека C C разработчика | cpp boost qt from kr


Telegram Библиотека C/C++ разработчика | cpp, boost, qt
FROM USA